/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package Model;

import java.util.Observable;
import java.util.Observer;

/**
 *
 * @author Bart-Home
 */
public class Joueur extends Observable {

    private String couleur;
    private Observer Obs;
    private int piecesRestantes;

    public Joueur(String couleur) {
        this.couleur = couleur;
        this.piecesRestantes = 20;
    }

    public String getCouleur() {
        return couleur;
    }

    public void setCouleur(String couleur) {
        this.couleur = couleur;
    }

    public int getPiecesRestantes() {
        return piecesRestantes;
    }

    public void setPiecesRestantes(int piecesRestantes) {
        this.piecesRestantes = piecesRestantes;
    }

    /**
     * Diminue ne nombre de pièces de un
     */
    public void perdUnePiece() {
        this.piecesRestantes--;
    }

    /**
     * Cette méthode permet d'ajouter des observer
     */
    public void addObserver(Observer obs) {
        this.Obs = obs;
    }

    /**
     * Cette méthode permet de supprimer des observer
     */
    public void deleteObserver() {
        this.Obs = null;
    }

    /**
     * Cette méthode demande la mise à jour de la vue
     */
    public void notifyObservers(String mess) {
        Obs.update(this, mess);
    }
}
